import pinia from './stores/pinia'
import router from './router'
import store from './stores/module/user'
const userStore = store(pinia)


router.beforeEach(async (to, from, next) => {
    const refreshToken = localStorage.getItem('FRONTEND_REFRESH_TOKEN');
    const accessToken = localStorage.getItem('FRONTEND_ACCESS_TOKEN');

    // 如果是登录页面，直接继续导航
    if (to.path === '/login') {
        next(); // 确保这里调用了 next()
        return; // 并且在这里返回
    }

    // 如果不是登录页面，并且存在token，则尝试获取用户信息
    if (refreshToken && accessToken) {
        try {
            const userInfo = await userStore.getInfo(); // 获取用户信息
            next(); // 继续导航
        } catch (error) {
            console.error('获取用户信息失败', error);
            next('/login'); // 获取用户信息失败则跳转到登录页面
        }
    } else {
        next('/login'); // 不满足条件则跳转到登录页面
    }
});